package ebj.common.annotation.demo_data_provider_manager.anno;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * <p>功能说明:...</p>
 * @author zhoushineyoung@hotmail.com
 * @time 2016年10月19日 上午11:54:46
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ProviderAttribute {
    // Display name of input in the web page
    String name() default "";
    // Input type
    AttributeType type() default AttributeType.Input;
    // Input default value for hinting
    String defaultValue() default "";

    int order() default 0;

    enum AttributeType {
        Input("input"), TextArea("textarea"), Password("password");
        private String name;

        private AttributeType(String name) {
            this.name = name;
        }

        public String toString() {
            return this.name;
        }
    }
}
